package com.javasm.mingming.webuser.entity;

import java.util.Date;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.extension.activerecord.Model;
import java.io.Serializable;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

/**
 * (WebUser)表实体类
 *
 * @author makejava
 * @since 2025-02-28 09:56:57
 */
@Data
@NoArgsConstructor
@AllArgsConstructor
public class WebUser extends Model<WebUser>  implements  Cloneable{
    @TableId(type = IdType.AUTO)
    private Integer uid;
    //用户名
    private String username;
    //密码
    private String password;
    //0正常1删除2封号
    private Integer status;
    //邮箱
    private String email;
    //手机号
    private String phone;
    //注册时间
    private Date regTime;

    //关联上webUserInfo
    //他的意思是，注解表明了当前数据库中没有WebUserInfo的字段，
    // 所以在对当前数据库中进行增删改查操作的时候，
    // 需要略过这个字段，避免出现错误，所以exist的意思是存在是错误的，就是没有的意思
    @TableField(exist = false)
    private WebUserInfo  userInfo;

    @Override
    public WebUser clone()  {
        Object clone = null;
        try {
            clone = super.clone();
        } catch (CloneNotSupportedException e) {
            throw new RuntimeException(e);
        }
        WebUser webUser = (WebUser) clone;
        WebUserInfo userInfo1 = webUser.getUserInfo().clone();
        if(userInfo1 != null){
            WebUserInfo WebUserInfoClone = userInfo1.clone();
            webUser.setUserInfo(WebUserInfoClone);
        }
        return webUser;
    }
}

